﻿using MultiDAQ_Analysis.Calculation.Results;
using System;
using System.Threading.Tasks;

namespace MultiDAQ_Analysis.Calculation.Interfaces
{
    public interface IMeasurementCalculator
    {
        string MeasurementType { get; }
        Type ParameterType { get; }
        bool CanCalculate(MeasurementCalculationContext context);
        Task<MeasurementCalculationResult> CalculateAsync(MeasurementCalculationContext context);
        Task SaveResultsAsync(MeasurementCalculationResult result);
    }
}